package com.hongyuan.sellcoach.data.http;

import com.hongyuan.sellcoach.data.userbean.MemberLoginBean;
import com.hongyuan.sellcoach.data.userbean.TokenBean;
import com.hongyuan.sellcoach.myview.select_time.ContentTimeBean;
import com.hongyuan.sellcoach.ui.course.beans.CourseCalendarBeans;
import com.hongyuan.sellcoach.ui.course.beans.CourseDetailBean;
import com.hongyuan.sellcoach.ui.course.beans.MyCourseBeans;
import com.hongyuan.sellcoach.ui.course.beans.MyCourseTopBeans;
import com.hongyuan.sellcoach.ui.course.beans.OsBeans;
import com.hongyuan.sellcoach.ui.course.beans.SalesGiveLessonBeans;
import com.hongyuan.sellcoach.ui.course.beans.SalesPerformanceBean;
import com.hongyuan.sellcoach.ui.home.beans.HomeContentBean;
import com.hongyuan.sellcoach.ui.home.beans.SelectCoachBeans;
import com.hongyuan.sellcoach.ui.home.beans.SelectCourseBeans;
import com.hongyuan.sellcoach.ui.home.beans.StudentsBeans;
import com.hongyuan.sellcoach.ui.home.beans.TopTimeBean;
import com.hongyuan.sellcoach.ui.main.beans.CheckVersionBeans;
import com.hongyuan.sellcoach.ui.main.beans.NoDataBean;
import com.hongyuan.sellcoach.ui.main.beans.PhoneMessageTokenBean;
import com.hongyuan.sellcoach.ui.main.beans.ReturnImgsBean;
import com.hongyuan.sellcoach.ui.main.beans.ReturnMoreImgBean;
import com.hongyuan.sellcoach.ui.member.beans.CourseRecordBeans;
import com.hongyuan.sellcoach.ui.member.beans.MemberCourseBeans;
import com.hongyuan.sellcoach.ui.member.beans.MemberInBeans;
import com.hongyuan.sellcoach.ui.member.beans.MemberInfoBeans;
import com.hongyuan.sellcoach.ui.member.beans.MembersBean;
import com.hongyuan.sellcoach.ui.person.beans.CoachDeatilsBean;
import com.hongyuan.sellcoach.ui.person.beans.CoachIdleTimeBean;
import com.hongyuan.sellcoach.ui.person.beans.CoachImgBean;
import com.hongyuan.sellcoach.ui.person.beans.CoachLessonItemBean;

import java.util.List;
import java.util.Map;
import io.reactivex.Observable;
import okhttp3.RequestBody;

public interface HttpDataSource {

    Observable<MyBaseResponse<TokenBean>> api_token(Map<String, String> params);

    Observable<MyBaseResponse<MemberLoginBean>> memberlogin(Map<String, String> params);

    Observable<MyBaseResponse<ReturnImgsBean>> upfile_oss(Map<String, RequestBody> params);

    Observable<MyBaseResponse<ReturnMoreImgBean>> upfile_oss_more(Map<String, RequestBody> params);

    Observable<MyBaseResponse<NoDataBean>> send_regi_msg(Map<String, String> params);

    Observable<MyBaseResponse<PhoneMessageTokenBean>> get_token(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> do_find_password(Map<String, String> params);

    Observable<MyBaseResponse<MemberLoginBean>> memberlogin_dxm(Map<String, String> params);

    Observable<MyBaseResponse<CheckVersionBeans>> check_app_version(Map<String, String> params);

    Observable<MyBaseResponse<List<TopTimeBean>>> get_plan_date(Map<String, String> params);

    Observable<MyBaseResponse<HomeContentBean>> get_coach_appointment_course_privite_list(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> jl_un_agree_cancel(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> jl_agree_cancel(Map<String, String> params);

    Observable<MyBaseResponse<List<SelectCourseBeans>>> cp_list(Map<String, String> params);

    Observable<MyBaseResponse<List<SelectCoachBeans>>> privite_coach_list(Map<String, String> params);

    Observable<MyBaseResponse<List<ContentTimeBean>>> get_coach_timeplan_day_list(Map<String, String> params);

    Observable<MyBaseResponse<List<ContentTimeBean>>> get_coach_timeplan_day_list_coach(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> del_coach_timeplan(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> add_coach_timeplan(Map<String, String> params);

    Observable<MyBaseResponse<StudentsBeans>> privite_user_order(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> add_course_privite_appointment(Map<String, String> params);

    Observable<MyBaseResponse<MyCourseBeans>> get_course_privite_list(Map<String, String> params);

    Observable<MyBaseResponse<CourseCalendarBeans>> get_coach_timeplan_list(Map<String, String> params);

    Observable<MyBaseResponse<CourseDetailBean>> get_course_privite_info(Map<String, String> params);

    Observable<MyBaseResponse<MembersBean>> get_coach_members(Map<String, String> params);

    Observable<MyBaseResponse<MyCourseTopBeans>> course_index(Map<String, String> params);

    Observable<MyBaseResponse<SalesPerformanceBean>> order_achievement(Map<String, String> params);

    Observable<MyBaseResponse<OsBeans>> os_list(Map<String, String> params);

    Observable<MyBaseResponse<SalesGiveLessonBeans>> cpa_achievement(Map<String, String> params);

    Observable<MyBaseResponse<MemberInfoBeans>> member_info(Map<String, String> params);

    Observable<MyBaseResponse<MemberCourseBeans>> cp_member(Map<String, String> params);

    Observable<MyBaseResponse<MemberInBeans>> in_member(Map<String, String> params);

    Observable<MyBaseResponse<CourseRecordBeans>> cpa_member(Map<String, String> params);

    Observable<MyBaseResponse<CoachDeatilsBean>> get_coach_index_info(Map<String, String> params);

    Observable<MyBaseResponse<CoachIdleTimeBean>> get_coach_last_kong_time(Map<String, String> params);

    Observable<MyBaseResponse<CoachImgBean>> get_coach_photo_list(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> del_photos(Map<String, String> params);

    Observable<MyBaseResponse<NoDataBean>> add_coach_photo(Map<String, String> params);

}
